home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Demos / AppMaker 2.0b3 / Demo AppMaker 1.5 / Demo AppMaker™ / Demo AppMaker™.rsrc / TmCT_1017_CPane < prev    next >
Encoding:
Text File  |  1992-04-08  |  2.6 KB  |  111 lines

  1. %case include%
  2.     %if classname = CPane%
  3.         #include <%classname%.h>
  4.     %else%
  5.         #include "%classname%.h"
  6.     %endif%
  7. %case include.override%
  8.     %if classname = CPane%
  9.         #include "%classname%.h"
  10.     %endif%
  11. %case classDecl%
  12.     class %classname%;
  13. %case instance%
  14.     %classname%%        %*%itemname%;
  15. %case zAuxiliaryMethod.decl%
  16.     %if classname = CPane%
  17.         virtual %classname%    *New%itemname%        (void);
  18.     %endif%
  19. %case zAuxiliaryMethod%
  20.     %if classname = CPane%
  21.         /*----------*/
  22.         // The only purpose of this function is so that you can override it
  23.         // to create the user item as your subclass of %classname%
  24.     
  25.         %if window%
  26.             %classname%    *Z%windname%::New%itemname%    (void)
  27.         %else%
  28.             %classname%    *Z%dlogname%::New%itemname%    (void)
  29.         %endif%
  30.         {
  31.             %classname%%    %*pane;
  32.         
  33.             pane = new %classname%;
  34.             return (pane);
  35.         
  36.         } /* New%itemname% */
  37.     
  38.     %endif%
  39. %case auxiliaryClass%
  40.     %if classname = CPane%
  41.         /*----------*/
  42.         class C%itemname% : public %classname% {
  43.         public:
  44.             void    IViewTemp    (CView            *anEnclosure,
  45.                                  CBureaucrat    *aSupervisor,
  46.                                  Ptr            viewData);        // is override
  47.             void    Draw        (Rect            *area);            // is override
  48.         }; /* C%itemname% */
  49.     
  50.     %endif%
  51. %case auxiliaryMethod.decl%
  52.     %if classname = CPane%
  53.         %classname%    *New%itemname%        (void);        // is override
  54.     %endif%
  55. %case auxiliaryMethod%
  56.     %if classname = CPane%
  57.         /*----------*/
  58.         void    C%itemname%::IViewTemp        (CView            *anEnclosure,
  59.                                          CBureaucrat    *aSupervisor,
  60.                                          Ptr            viewData)
  61.         {
  62.             inherited::IViewTemp (anEnclosure, aSupervisor, viewData);
  63.         
  64.             // any additional initialization for your subclass
  65.         
  66.         } /* IViewTemp */
  67.     
  68.         /*----------*/
  69.         void    C%itemname%::Draw    (Rect        *area)
  70.         {
  71.             // replace with your own code which draws the pane
  72.             // note that 'area' is usually ignored; it has no relationship
  73.             // to the size of the pane; it merely indicates what portion
  74.             // (in QuickDraw coordinates) of the pane needs to be drawn
  75.             
  76.             Rect        theFrame;
  77.             PenState    savePen;
  78.         
  79.             GetPenState (&savePen);
  80.             PenNormal ();
  81.             FrameToQDR (&frame, &theFrame);
  82.     
  83.             SetPenState (&savePen);
  84.         } /* Draw */
  85.     
  86.         /*----------*/
  87.         // This overrides the parent's New%itemname% to create a subclass of %classname%
  88.         
  89.         %if window%
  90.             %classname%    *C%windname%::New%itemname%    (void)
  91.         %else%
  92.             %classname%    *C%dlogname%::New%itemname%    (void)
  93.         %endif%
  94.         {
  95.             C%itemname%            *pane;
  96.         
  97.             pane = new C%itemname%;
  98.             return (pane);
  99.         
  100.         } /* New%itemname% */
  101.     
  102.     %endif%
  103. %case create%
  104.     
  105.     %if classname = CPane%
  106.         %itemname% = New%itemname% ();
  107.     %else%
  108.         %itemname% = new %classname%;
  109.     %endif%
  110.     %itemname%->IViewRes ('%panetype%', %paneID%, %enclosure%, supervisor);
  111.